import Vue from 'vue'
import Vuex from 'vuex'
import getters from './getters'
import app from './modules/app'
import settings from './modules/settings'
import user from './modules/user'
import createPersistedState from 'vuex-persistedstate'

Vue.use(Vuex)

const store = new Vuex.Store({
  modules: {
    app,
    settings,
    user
  },
  getters,
  plugins: [createPersistedState({
    key: 'MMToken',
    // 注意，没写paths，会把所有数据（包括所有模块）的都持久化起来
    // 如果写了paths就按你指令的数据持久化，如果只是写模块名，把模块里的所有数据都持久化了
    // paths: [ '指定要保存的数据', '模块名' ],
    // 只是持久化模块里的某个数据
    paths: ['user.token']
    // 修改存储位置，默认是localStorage
    // storage: sessionStorage
  })]
})

export default store
